package com.iptv.grape.bu;

import java.lang.annotation.ElementType;
import java.lang.annotation.*;

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface AppState {

    /**
     * 按键值
     */
    int[] keyVals() default {};

    /**
     * 是否正在播放
     */
    boolean isPlaying() default true;

    /**
     * 是否拥有焦点
     */
    boolean isFocus() default true;

    /**
     * 是否正在全屏播放
     */
    boolean isFullScreen() default true;

    /**
     * 当前的播放界面类型(直播 = Live 点播 = Vod)
     */
    String curPlayType()  default "Live";

    /**
     * 当前的直播状态 Live = 直播流 时移 = Time 回看 = Back
     */
    String curLiveType()  default "Live";

    /**
     * 当前是否显示了直播的频道菜单
     */
    boolean isShowLiveMenu() default false;

    /**
     * 当前是否跳过显示了直播的频道菜单的状态判断
     */
    boolean isIgnoreShowLiveMenu() default false;

    /**
     * 当前是否显示了回看的节目单列表
     */
    boolean isShowChannelBillUI() default false;

    /**
     * 当前是否跳过显示了回看的节目单列表的状态判断
     */
    boolean isIgnoreShowChannelBillUI() default false;

    /**
     * 当前是否显示了点播的菜单
     */
    boolean isShowVodMenu() default false;


    /**
     * 当前是否跳过显示了点播的菜单的状态判断
     */
    boolean isIgnoreShowVodMenu() default false;


    /**
     * 当前是否显示了底部推荐菜单
     */
    boolean isShowRecommendUI() default false;


    /**
     * 当前是否跳过显示了底部推荐菜单的状态判断
     */
    boolean isIgnoreShowRecommendUI() default false;


    /**
     * 当前是否显示了底部时移UI
     */
    boolean isTimeLiveUI() default false;


    /**
     * 当前是否跳过显示了底部时移UI的状态判断
     */
    boolean isIgnoreTimeLiveUI() default false;

    /**
     * 当前是否正在输入数字按键换台中
     */
    boolean isChangingLive() default false;

}
